package service;

import dao.inte.PasswordResetRepository;
import dao.inte.UserRepository;
import org.springframework.transaction.annotation.Transactional;
import service.mail.Mailer;
import service.velocity.VelocityService;


public interface PasswordResetService {
    @Transactional
    void generateNewPassword(String login, String email, String key) throws Exception;

    @Transactional
    String requestPasswordReset(String login, String email) throws Exception;

    boolean checkPasswordResetKey(String key);

    void setUserRepository(UserRepository userRepository);

    void setPasswordResetRepository(PasswordResetRepository passwordResetRepository);

    void setMailer(Mailer mailer);

    void setVelocityService(VelocityService velocityService);
}
